<template>
  <div>
    <!--课程预览-->
    <div class="ccInfo">
      <img :src="coursePublish.cover">
      <div class="main">
        <h2>{{ coursePublish.title }}</h2>
        <p class="gray"><span>共{{ coursePublish.lessonNum }}课时</span></p>
        <p><span>所属分类：{{ coursePublish.subjectParentTitle }} — {{ coursePublish.subjectTitle }}</span></p>
        <p>课程讲师：{{ coursePublish.teacherName }}</p>
        <h3 class="red">￥{{ coursePublish.price }}</h3>
      </div>
    </div>
    <div style="text-align:center">
      <el-button :disabled="flag" type="primary" plain @click="prev">上一步</el-button>
      <el-button :disabled="flag" type="primary" plain @click="publish">发布课程</el-button>
    </div>
  </div>
</template>

<script>
import courseApi from '@/api/course'
export default {
  data() {
    return {
      coursePublish: {},
      flag: false
    }
  },
  created() {
    // 查询要发布课程的信息
    courseApi.getCoursePublish(this.$parent.courseId).then(r => {
      this.coursePublish = r.data.item
    })
  },
  methods: {

    prev() {
      if (this.flag) {
        return
      }
      this.flag = true
      // 跳转到下一个页面：只需要修改父vue页面中的form.vue中的active的值
      /**
      * vue父子组件通信：
      *     1、父组件获取子组件；调用方法
      *         this.$refs.ref值.属性/方法()
      *     2、子组件获取父组件
      *         this.$parent
      */
      this.$parent.active = 1
    },
    publish() {
      if (this.flag) {
        return
      }
      this.flag = true
      // 跳转到下一个页面：只需要修改父vue页面中的form.vue中的active的值
      /**
      * vue父子组件通信：
      *     1、父组件获取子组件；调用方法
      *         this.$refs.ref值.属性/方法()
      *     2、子组件获取父组件
      *         this.$parent
      */
      courseApi.publish(this.$parent.courseId).then(r => {
        this.$message.success('课程发布成功')
        this.$parent.active = 3
        // 跳转到课程列表页面
        this.$router.push('/course/list')
      })
    }
  }
}
</script>

<style>
.ccInfo {
    background: #f5f5f5;
    padding: 20px;
    overflow: hidden;
    border: 1px dashed #DDD;
    margin-bottom: 40px;
    position: relative;
}
.ccInfo img {
    background: #d6d6d6;
    width: 500px;
    height: 278px;
    display: block;
    float: left;
    border: none;
}
.ccInfo .main {
    margin-left: 520px;
}

.ccInfo .main h2 {
    font-size: 28px;
    margin-bottom: 30px;
    line-height: 1;
    font-weight: normal;
}
.ccInfo .main p {
    margin-bottom: 10px;
    word-wrap: break-word;
    line-height: 24px;
    max-height: 48px;
    overflow: hidden;
}

.ccInfo .main p {
    margin-bottom: 10px;
    word-wrap: break-word;
    line-height: 24px;
    max-height: 48px;
    overflow: hidden;
}
.ccInfo .main h3 {
    left: 540px;
    bottom: 20px;
    line-height: 1;
    font-size: 28px;
    color: #d32f24;
    font-weight: normal;
    position: absolute;
}
</style>

